"use strict";
// 父类 基类
class Dog {
    constructor(name) {
        this.name = name;
        this.age;
        this.a;
    }
    run() {
        console.log(this.name + ":run");
    }
}
// name 属性 类型
//   public name: string;
//   public是默认添加的 公开
// 自己能用-自类能使用
//   `private`，私有的，只属于这个类自己，它的类外部和继承它的子类都访问不到。
Dog.legNum = 4;
// 子类
class TaiDi extends Dog {
    constructor(name) {
        super(name);
        console.log(this.name);
        // this.age;
        this.a;
    }
    aa() { }
    run() {
        console.log("222");
    }
}
class Ao extends Dog {
    constructor(name) {
        super(name);
    }
    aa() { }
    run() {
        console.log("ao----");
    }
}
let d1 = new Dog("zhangsan");
d1.name;
d1.run();
// d1.age;
// d1.a
let d2 = new TaiDi("xiaohie");
d2.name;
d2.run();
d2.aa();
let d3 = new Ao("aa");
d1.run();
// Dog.legNum
// Ao.legNum
